JSON 到 TypeScript 类实例?
全部标签 我正在尝试从我的api返回信息,但我不明白如何正确使用订阅。使用数组时,我从我的服务返回一个空数组,并在获取值时将其推送到其中。我如何在app-componentts中正确地只返回一个值变量。现在如果我执行alert(JSON.stringify(authenticated))它只会给我{"_isUnsubscribed":false,"_subscriptions":[{"isUnsubscribed":false}]}应用组件tscheckAuthentication(){varauthenticated=this._authService.getAuthenication();}
我想在API请求导致404错误时采取特定操作。我读过,执行此操作的适当方法是处理应用程序适配器中的错误,如下所示:handleResponse:function(status,headers,payload){if(status===404&&payload.errors){//handleerror}returnthis._super(...arguments);}问题是,一旦我设置了适配器,它就不会完成加载页面,所以我可以处理页面本身的错误。相反,它会自动将我带到一些只显示“适配器错误”的错误路径。我怎样才能停止/覆盖这种行为? 最佳答案
我正在尝试使用新路由器为我的Angular2应用程序设置身份验证。有人建议尝试以下操作:constructor(private_router:Router){}ngOnInit(){this._router.subscribe(next=>{if(!userIsLoggedInOrWhatever){this._router.navigate(['Login']);}})}然而,这个问题是这会导致typescript错误(app.component.ts(47,22):errorTS2339:Property'subscribe'doesnotexistontype'Router'.这
我知道如何通过导入来读取json文件从“./config/data.json”导入文件;控制台日志(文件);。但是有没有一种简单的方法可以在上面编写或编辑。 最佳答案 使用AsyncStorage保存本地设置:下面是在你的代码中设置你的设置(这个例子是针对一些SwitchasyncsetSettings(){try{varobj={};varsettings=awaitAsyncStorage.getItem('settings');settings=JSON.parse(result);Object.assign(obj,sett
我有一个JavaScript对象,它动态地允许成员作为访问器属性绑定(bind)到对象的实例:来源functionDynamicObject(obj){for(varpropinobj){Object.defineProperty(this,prop,{get:function(){returnobj[prop];},set:function(value){obj[prop]=value;},enumerable:true,configurable:false});}}用法varobj=newDynamicObject({name:"JohnSmith",email:"john.smi
我的打字文件中有这个:declarenamespaceSomatic{enumPropType{html,object,css}}在另一个文件index.ts中,我为这个枚举设置了一个更短的别名:typePropType=Somatic.PropType;然后我想在switch语句中使用带别名的枚举类型:switch(propType){casePropType.html:break;...}但是Typescript无法识别带别名的枚举类型值。这里有什么问题? 最佳答案 您应该使用import关键字而不是type:importPro
我通过npminstall@types/googlemaps将googlemapsJSAPI与google.maps命名空间一起使用。我相信API是动态加载的,因此google.mapsJS全局不能立即可用。但我不明白为什么我会收到运行时错误:UncaughtReferenceError:googleisnotdefined当我尝试使用扩展google.maps.Marker时code>class但不是interface//Noproblem!exportinterfaceUuidMarkerextendsgoogle.maps.Marker{uuid:string;}//Uncaug
我有一个SPA应用程序,它将对IndexedDB进行多次读取/写入。打开数据库是一个带有回调的异步操作:vardb;varrequest=window.indexedDB.open("MyDB",2);request.onupgradeneeded=function(event){//Upgradetolatestversion...}request.onerror=function(event){//Uhoh...}request.onsuccess=function(event){//DBopen,nowdosomethingdb=event.target.result;};我可以
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion我一直深入JS世界,遇到了3种不同的方法来开发网站的前端购物车:带有原型(prototype)函数的构造函数varcart=function(){this.items={}}cart.prototype.increaseItemQty=function(partNumber){if(this.items[partNumber]){this.items[partNumber].qty+=1;
我有一个独立函数,旨在使用Function.prototype.call提供的上下文。例如:functionfoo(){returnthis.bar;}>foo.call({bar:"baz"})baz有没有办法在这种情况下为this关键字提供Typescript类型注释? 最佳答案 首先,你可以使用特殊的thisparameter用于识别您期望的对象类型的语法this成为:functionfoo(this:{bar:string}){returnthis.bar;//nomoreerror}如果你直接调用它会有帮助:foo();/